Current graphics data processors have processing units that perform specific operations on graphics data including linear interpolation, bilinear interpolation, and trilinear interpolation. Video filtering for processing video data and displaying high quality images requires filtering the video data using more than two taps or using non-linear filters. Current video filtering systems use dedicated processors to perform video filtering operations and generate high quality images. The high quality images are integrated with data output by a graphics data processor using an overlay technique. Recently, graphics data processors may be programmed using shader programs and vertex programs, permitting a wider variety of functions to be performed using these programmable graphics processors.
Accordingly, video filtering has computational requirements that it would be desirable to meet by application of the computational resources of a programmable graphics processor.